This application claims priority to an application entitled xe2x80x9cApparatus and Method for Adaptive Map Channel Decoding in Radio Telecommunication Systemxe2x80x9d filed in the Korean Industrial Property Office on May 28, 1999 and assigned Ser. No. 99-19476, the contents of which are hereby incorporated by reference.
1. Field of the Invention
The present invention relates generally to a channel decoding apparatus and method in a radio telecommunication system, and in particular, to a MAP (Maximum Aposteriori Probability) channel decoding apparatus and method.
2. Description of the Related Art
Various channel codes are widely used to conduct communications reliably in a radio telecommunication system (e.g., satellite system, WCDMA, UMTS, and CDMA 2000) The present invention pertains to a turbo code decoding apparatus and method using recursive systematic convolutional codes for data transmission in a bad channel environment.
Turbo code decoding is implemented in a MAP or a SOVA (Soft Output Viterbi Algorithm) method. The former exhibits optimal performance in terms of bit error rate (BER). The performance of a MAP channel decoder is about 0.6-0.7 dB higher than that of a SOVA channel decoder in an ideal receiver. To achieve ideal operation of a receiver for MAP or SOVA turbo decoding, the following conditions must be satisfied: (1) the receiver estimates the current channel state accurately; and (2) the receiver uses a sufficient number of bits for inner operations.
Meanwhile, the receiver can also subject an input signal to RF (Radio Frequency) processing, down-conversion, ADC (analog-to-digital conversion), and symbol demodulation.
Generally, noise power estimation in a channel environment precedes a MAP operation. Therefore, a MAP channel decoder receives noise power estimated by a channel estimator and the noise power determines decoding performance.
A plurality of metrics are used as main variables in a MAP algorithm. Hereinbelow, equations required to implement the MAP algorithm will be described.
A branch metric (BM) is calculated by
Dki(m)=(La(dk)+Lcxc2x7xk)xc2x7i+Lcxc2x7ykxc2x7Yli(m)xe2x80x83xe2x80x83(1)
where La(dk) is extrinsic information obtained from a feed-back loop in a MAP channel decoder, Lc is channel reliability which can be expressed as 2/"sgr"2 ("sgr"2 is noise power estimated by a channel estimator), xk is a systematic code, yk is a parity code, i is an expected systematic code, and Yli(m) is an expected parity code.
A forward state metric (FSM), Alpha is
Aki(m)=Dki(m)+E1j=0(Akxe2x88x921i(Sbj(m))xe2x80x83xe2x80x83(2)
where Sbj(m) indicates a backward changed state when an information bit is j to set a current state to m. The E function is defined as
xEy=min(x, y)xe2x88x92log(1+exe2x88x92|xxe2x88x92y|)xe2x80x83xe2x80x83(3)
In a MAP algorithm, x and y can be metric values such as Beta and Alpha as can be seen in (4) and (2)
A reverse state metric (RSM), Beta is
Bki(m)=E1j=0(Bik+1(Sbi(m))+Djk+1(Sfj(m))xe2x80x83xe2x80x83(4)
where Sfj(m) is a state changed forward when an information bit is input in a current encode state m.
If an information bit is dk at time k of MAP, a log likelihood ratio (LLR) is                               L          ⁡                      (                          d              k                        )                          =                                            E                              m                =                0                                            NS                -                1                                      ⁢                                          A                k                0                            ⁡                              (                m                )                                              +                                    B              k              0                        ⁡                          (              m              )                                -                                    E                              m                =                0                                            NS                -                1                                      ⁢                                          A                k                1                            ⁡                              (                m                )                                              +                                    B              k              1                        ⁡                          (              m              )                                                          (        5        )            
where L(dk) is an LLR when an information bit is dk at time k of MAP and ENSxe2x88x921m=0 indicates that an operation is performed on NS E functions.
The MAP decoder calculates a BM from a received code and then an RSM in the above equations, as stated above. The MAP decoder calculates an LLR being a decoded soft output simultaneously with calculation of an FSM.
As noted from Eq. 1, the MAP channel decoder needs Lc to calculate the BM. That is, the MAP channel decoder can calculate the BM only after it finds out the noise power of a channel environment. According to a general MAP algorithm, therefore, the decoding performance of the MAP channel decoder is sensitively influenced by the operation of a channel estimator.
If a channel decoder is implemented for turbo decoding, it is preferred that the channel decoder operates stably in a real mobile communication channel environment regardless of the current channel state.
Particularly, an input signal is multiplied by a scaling factor according to changes in the channel status, like fading, and it is not easy for a receiver to obtain an accurate scaling factor with respect to the current channel state. However, an accurate scaling factor must be reflected to obtain accurate estimation of the channel state. That is, when the channel reliability Lc is degraded, the decoding performance of a MAP algorithm is also degraded, unless the scaling factor is accurately calculated.
The receiver quantizes an input analog signal with limited bits. As a result, an input signal with strength greater than a predetermined level is clipped. The dynamic range of this input signal seriously influences the performance of the channel decoder, especially in power control.
It is, therefore, an object of the present invention to provide a stable MAP channel decoding apparatus and method in the preset mobile communication channel environment.
It is another object of the present invention to provide an apparatus and method for decoding data stably in a real channel environment of a mobile communication system.
It is a further object of the present invention to provide a MAP channel decoding apparatus and method in which decoding is stably performed regardless of channel noise power in a channel environment of a mobile communication system.
It is still another object of the present invention to provide a stable MAP channel decoding apparatus and method in which a MAP channel decoding is performed with a first E function including a log function if the current channel state is a static channel state and with a second E function free of a log function if the current channel state is a time-varying channel state to ensure optimal decoding performance in a real mobile communication channel environment.
Briefly, these and other objects can be achieved by providing an adaptive MAP channel decoding apparatus and method in a mobile communication system. In the adaptive MAP channel decoding apparatus, a channel estimator calculates channel noise power and a scaling factor, a controller determines an operation mode by checking accumulated channel noise power and the scaling factor, and a MAP channel decoder performs a MAP decoding operation with an E function including a log function in a static channel mode(good channel status) and an E function free of a log function in a time-varying channel mode.(bad channel status).
In the adaptive MAP channel decoding method according to another aspect of the present invention, a current channel state is first estimated. Then, an E function including a log function is performed if the current channel state is static and an E function free of a log function is performed if the current channel state is time-varying.